from1(X) -> cons2(X, from1(s1(X)))
first2(0, Z) -> nil
first2(s1(X), cons2(Y, Z)) -> cons2(Y, first2(X, Z))
sel2(0, cons2(X, Z)) -> X
sel2(s1(X), cons2(Y, Z)) -> sel2(X, Z)
↳ QTRS
↳ Non-Overlap Check
from1(X) -> cons2(X, from1(s1(X)))
first2(0, Z) -> nil
first2(s1(X), cons2(Y, Z)) -> cons2(Y, first2(X, Z))
sel2(0, cons2(X, Z)) -> X
sel2(s1(X), cons2(Y, Z)) -> sel2(X, Z)
↳ QTRS
↳ Non-Overlap Check
↳ QTRS
↳ DependencyPairsProof
from1(X) -> cons2(X, from1(s1(X)))
first2(0, Z) -> nil
first2(s1(X), cons2(Y, Z)) -> cons2(Y, first2(X, Z))
sel2(0, cons2(X, Z)) -> X
sel2(s1(X), cons2(Y, Z)) -> sel2(X, Z)
from1(x0)
first2(0, x0)
first2(s1(x0), cons2(x1, x2))
sel2(0, cons2(x0, x1))
sel2(s1(x0), cons2(x1, x2))
SEL2(s1(X), cons2(Y, Z)) -> SEL2(X, Z)
FIRST2(s1(X), cons2(Y, Z)) -> FIRST2(X, Z)
FROM1(X) -> FROM1(s1(X))
from1(X) -> cons2(X, from1(s1(X)))
first2(0, Z) -> nil
first2(s1(X), cons2(Y, Z)) -> cons2(Y, first2(X, Z))
sel2(0, cons2(X, Z)) -> X
sel2(s1(X), cons2(Y, Z)) -> sel2(X, Z)
from1(x0)
first2(0, x0)
first2(s1(x0), cons2(x1, x2))
sel2(0, cons2(x0, x1))
sel2(s1(x0), cons2(x1, x2))
↳ QTRS
↳ Non-Overlap Check
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
SEL2(s1(X), cons2(Y, Z)) -> SEL2(X, Z)
FIRST2(s1(X), cons2(Y, Z)) -> FIRST2(X, Z)
FROM1(X) -> FROM1(s1(X))
from1(X) -> cons2(X, from1(s1(X)))
first2(0, Z) -> nil
first2(s1(X), cons2(Y, Z)) -> cons2(Y, first2(X, Z))
sel2(0, cons2(X, Z)) -> X
sel2(s1(X), cons2(Y, Z)) -> sel2(X, Z)
from1(x0)
first2(0, x0)
first2(s1(x0), cons2(x1, x2))
sel2(0, cons2(x0, x1))
sel2(s1(x0), cons2(x1, x2))
↳ QTRS
↳ Non-Overlap Check
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ QDP
SEL2(s1(X), cons2(Y, Z)) -> SEL2(X, Z)
from1(X) -> cons2(X, from1(s1(X)))
first2(0, Z) -> nil
first2(s1(X), cons2(Y, Z)) -> cons2(Y, first2(X, Z))
sel2(0, cons2(X, Z)) -> X
sel2(s1(X), cons2(Y, Z)) -> sel2(X, Z)
from1(x0)
first2(0, x0)
first2(s1(x0), cons2(x1, x2))
sel2(0, cons2(x0, x1))
sel2(s1(x0), cons2(x1, x2))
The following pairs can be strictly oriented and are deleted.
The remaining pairs can at least by weakly be oriented.
SEL2(s1(X), cons2(Y, Z)) -> SEL2(X, Z)
trivial
↳ QTRS
↳ Non-Overlap Check
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ PisEmptyProof
↳ QDP
↳ QDP
from1(X) -> cons2(X, from1(s1(X)))
first2(0, Z) -> nil
first2(s1(X), cons2(Y, Z)) -> cons2(Y, first2(X, Z))
sel2(0, cons2(X, Z)) -> X
sel2(s1(X), cons2(Y, Z)) -> sel2(X, Z)
from1(x0)
first2(0, x0)
first2(s1(x0), cons2(x1, x2))
sel2(0, cons2(x0, x1))
sel2(s1(x0), cons2(x1, x2))
↳ QTRS
↳ Non-Overlap Check
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
FIRST2(s1(X), cons2(Y, Z)) -> FIRST2(X, Z)
from1(X) -> cons2(X, from1(s1(X)))
first2(0, Z) -> nil
first2(s1(X), cons2(Y, Z)) -> cons2(Y, first2(X, Z))
sel2(0, cons2(X, Z)) -> X
sel2(s1(X), cons2(Y, Z)) -> sel2(X, Z)
from1(x0)
first2(0, x0)
first2(s1(x0), cons2(x1, x2))
sel2(0, cons2(x0, x1))
sel2(s1(x0), cons2(x1, x2))
The following pairs can be strictly oriented and are deleted.
The remaining pairs can at least by weakly be oriented.
FIRST2(s1(X), cons2(Y, Z)) -> FIRST2(X, Z)
trivial
↳ QTRS
↳ Non-Overlap Check
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ PisEmptyProof
↳ QDP
from1(X) -> cons2(X, from1(s1(X)))
first2(0, Z) -> nil
first2(s1(X), cons2(Y, Z)) -> cons2(Y, first2(X, Z))
sel2(0, cons2(X, Z)) -> X
sel2(s1(X), cons2(Y, Z)) -> sel2(X, Z)
from1(x0)
first2(0, x0)
first2(s1(x0), cons2(x1, x2))
sel2(0, cons2(x0, x1))
sel2(s1(x0), cons2(x1, x2))
↳ QTRS
↳ Non-Overlap Check
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
FROM1(X) -> FROM1(s1(X))
from1(X) -> cons2(X, from1(s1(X)))
first2(0, Z) -> nil
first2(s1(X), cons2(Y, Z)) -> cons2(Y, first2(X, Z))
sel2(0, cons2(X, Z)) -> X
sel2(s1(X), cons2(Y, Z)) -> sel2(X, Z)
from1(x0)
first2(0, x0)
first2(s1(x0), cons2(x1, x2))
sel2(0, cons2(x0, x1))
sel2(s1(x0), cons2(x1, x2))